- using Xi on a workstation cluster or a parallel computer -
It might happen that Xi sometimes needs all your memory or CPU time (ofen as a result of the unlimited Undo/Redo function of the graphic device - use the Clear All button in this case). If your computer is connected to the Internet or to a Intranet you should use the network of heterogeneous computers as a single large computer. To realize this Xi supports the message passing system PVM. Using PVM you are able to run the Xi interpreter on your fastest number crunching machine and the visualisation work is done by your desktop machine or some other machines of your workstation cluster.
First you have to initialize your parallel virtual machine. This is done with the help of a configuration file called pvmhosts. It is assumed that this cluster consists of the following computers:
ZAPHOD
GALILEI
CHAOTIX
CHAOS
On each copmuter the Xi home
directory is located in /usr/local/xi
except on CHAOS. Here it is the /root/new/xi (NOTE: For more than a year
Klaus tries to teach Fabian not to use the root account for daily
work without the slightest sucess till today).
PVM console and PVM daemon are enclosed in the Xi package in
the directory bin. The file pvmhosts has to look like this:
ZAPHOD dx=/usr/local/xi/bin/pvmd ep=/usr/local/xi/bin GALILEI dx=/usr/local/xi/bin/pvmd ep=/usr/local/xi/bin CHAOTIX dx=/usr/local/xi/bin/pvmd ep=/usr/local/xi/bin CHAOS dx=/root/new/xi/bin/pvmd ep=/root/new/xi/binStart the pvm daemon on every machine with pvmd pvmhosts & and have a closer look console with the pvm command (obviously pvm, pvmhosts and pvmd have to ly in the path). Detailed information and copyright notes can be obtained from the pvm-manual
pvm> conf 1 host, 1 data format HOST DTID ARCH SPEED zaphod 40000 LINUX 1000 galilei 60000 LINUX 1000 chaotix 80000 LINUX 1000 chaos A0000 LINUX 1000 pvm>The virtual machine can be stopped with the command stop at the console. The console can be leaved without stopping the virtual machine by typing in quit After the parallel virtual machine is constructed start Xi If you now open a window specify the \pvm Flag
( 1)>window(0,\bpp=6,\pvm);Xi will select one of the computers of your virtual machine to provide it's resources for the window. Aditionally you can explictly determin the computer for the window with
( 2)>window(1,\pvm="chaotix");
The next performance bottleneck is the raytracing of complex graphics. To take remedial measures use the same virtual machine and povray with the pvm extension. This special version called pvmpovray is enclosed to the Xi package in the directory bin.
For detailed information on povray and it's copyrights please consult the documentation for the program. Keep in mind that pvmpovray demands that it is located in the same directory on every machine. As a result CHAOS from the example above would be not suitable for povray. To remove CHAOS start the console on one of the other computers and type in
pvm>delete chaos pvm>quitTo start rendering use the command
pvmpovray +ixigraph.pov -oxigraph.tga +w700 +h700 -NM4in a shell. In this case the PVM extension flag -NM4 orders pvmpovray to fullfill the raytracing with 4 slaves on the 3 computers